package com.fortune.dao;
import com.fortune.dto.in.dUserMgt.DUserAddDto;
import com.fortune.dto.in.dUserMgt.DUserEditDto;
import com.fortune.dto.in.dUserMgt.DUserListDto;
import com.fortune.dto.in.mUserMgt.MUserListDto;
import com.fortune.vo.dUserMgt.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface DUserMgtDao {

    /**
     * 查看经销商员工列表
     * @param companyId
     * @param dealerId
     * @param dUserListDto
     * @return
     */
	List<User> list(@Param("companyId")String companyId, @Param("dealerId")String dealerId, @Param("dUserListDto")DUserListDto dUserListDto);

    /**
     * 查看经销商员工列表数量
     * @param companyId
     * @param dealerId
     * @param dUserListDto
     * @return
     */
	int count(@Param("companyId")String companyId, @Param("dealerId")String dealerId, @Param("dUserListDto")DUserListDto dUserListDto);

    /**
     * 禁止登陆
     * @param companyId
     * @param dealerId
     * @param id
     * @return
     */
    int editBan(@Param("companyId")String companyId, @Param("dealerId") String dealerId, @Param("id") String id);

    /**
     * 允许登录
     * @param companyId
     * @param dealerId
     * @param id
     * @return
     */
    int editAllow(@Param("companyId")String companyId, @Param("dealerId") String dealerId, @Param("id") String id);

    /**
     * 删除
     * @param companyId
     * @param dealerId
     * @param id
     * @return
     */
    int editDel(@Param("companyId")String companyId, @Param("dealerId") String dealerId, @Param("id") String id);

    /**
     * 新增员工
     * @param companyId
     * @param dealerId
     * @param dUserAddDto
     * @return
     */
    int addEmployer(@Param("companyId")String companyId, @Param("dealerId")String dealerId,@Param("dUserAddDto") DUserAddDto dUserAddDto);

    /**
     * 编辑员工
     * @param companyId
     * @param dealerId
     * @param id
     * @param dUserEditDto
     * @return
     */
    int editEmployer(@Param("companyId")String companyId, @Param("dealerId")String dealerId, @Param("id") String id,@Param("dUserEditDto") DUserEditDto dUserEditDto);

    /**
     * 查询密码是否正确
     * @param companyId
     * @param dealerId
     * @param id
     * @return
     */
    String findPassword(@Param("companyId")String companyId, @Param("dealerId") String dealerId, @Param("id") String id);

    /**
     * 修改密码
     * @param companyId
     * @param dealerId
     * @param id
     * @param password
     * @return
     */
    int editPassword(@Param("companyId")String companyId, @Param("dealerId") String dealerId, @Param("id") String id, @Param("newPassword") String newPassword);


    /**
     * 手机号验重
     * @param companyId
     * @param dealerId
     * @param dUserAddDto
     * @return
     */
    int checkPhone(@Param("companyId")String companyId, @Param("dealerId")String dealerId,@Param("dUserAddDto") DUserAddDto dUserAddDto);


    /**
     * 编号验重
     * @param companyId
     * @param dealerId
     * @param dUserAddDto
     * @return
     */
    int checkNumber(@Param("companyId")String companyId, @Param("dealerId")String dealerId,@Param("dUserAddDto") DUserAddDto dUserAddDto);



    /**
     * 手机号验重
     * @param companyId
     * @param dealerId
     * @param DUserEditDto
     * @return
     */
    int checkPhoneEdit(@Param("companyId")String companyId, @Param("dealerId")String dealerId, @Param("id")String id,@Param("dUserAddDto") DUserEditDto dUserEditDto);


    /**
     * 编号验重
     * @param companyId
     * @param dealerId
     * @param DUserEditDto
     * @return
     */
    int checkNumberEdit(@Param("companyId")String companyId, @Param("dealerId")String dealerId, @Param("id")String id,@Param("dUserAddDto") DUserEditDto dUserEditDto);









}
